package Day_0208.Redis;

/**
 * @author zxc
 * @date 2023/02/08 23:07
 **/
public class Redis_Atomic {
    public static void main(String[] args) {
        /**
         * 为什么Redis操作是原子性的，如何保证其原子性？
         * ===》
         * 1.对于Redis而言，命令的原子性指的是：一个操作的不可以再分，操作要么执行，要么不执行。
         *
         * 2.Redis的操作之所以是原子性的，是因为Redis是单线程的。
         * ===》
         * （1）Redis本身提供的所有API都是原子操作;
         * （2）Redis中事务是保证批量操作的原子性;
         *
         * 3.Redis中，多个命令在并发中也是原子性的吗？
         * （1）即，将多个Redis命令使用单个Redis命令来代替;
         *  例如 ：将get和set改成单命令操作，incr 。
         * （2）若是多个Redis命令并不能够使用单个Redis命令来进行代替，
         *  ===》使用Redis的事务，或者使用Redis+Lua==的方式实现.
         *
         */
    }
}
